﻿using OnHook.Domain;

namespace OnHook.Business.Options
{
    /// <summary>
    /// 微信配置
    /// </summary>
    public class WechatAppOption: IDbOption
    {
        /// <summary>
        /// APPID
        /// </summary>
        [OptionDescription("APPID")]
        public string WechatAppId { get; set; } = "wx3b734227aeb26a96";
        /// <summary>
        /// 微信验签token
        /// </summary>
        [OptionDescription("微信验签token")]
        public string WechatServerToken { get; set; } = "X0IqWYkUh4AmBw4tMB6x2TvcvKmywuDI";
        /// <summary>
        /// 微信EncodingAESKey
        /// </summary>
        [OptionDescription("微信EncodingAESKey")]
        public string WechatEncodingAESKey { get; set; } = "uJLFDvt5wGcvXWDH0WrKkzkoS2B2nkPLaACOKyBdtVV";
        /// <summary>
        /// APPSecret
        /// </summary>
        [OptionDescription("APPSecret")]
        public string WechatAppSecret { get; set; } = "006b18079577c2ba83732e369347d4be";
        /// <summary>
        /// 微信授权地址
        /// </summary>
        [OptionDescription("微信回调地址")]
        public string WechatAuthUrl { get; set; } = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=${WechatAppId}&redirect_uri=${WechatAuthCallBackUrl}&response_type=code&scope=${scope}&state=${state}#wechat_redirect";
        /// <summary>
        /// 微信回调地址
        /// </summary>
        [OptionDescription("微信回调地址")]
        public string WechatAuthCallBackUrl { get; set; } = "https://api.hmxls.top/open/auth-callback";
        /// <summary>
        /// 微信商户号
        /// </summary>
        [OptionDescription("微信商户号")]
        public string WechatMerchantNo { get; set; } = "1671762759";
        /// <summary>
        /// 微信支付通知地址
        /// </summary>
        [OptionDescription("微信支付通知地址")]
        public string WechatPayNotifyUrl { get; set; } = "https://zhuao.api.hmxls.top/api/order/wx/callback";
        /// <summary>
        /// 微信商户 v3 API 密钥
        /// </summary>
        [OptionDescription("微信商户 v3 API 密钥")]
        public string WechatV3Secret { get; set; } = "";
        /// <summary>
        /// 微信支付V3证书序列号
        /// </summary>
        [OptionDescription("微信支付服务点token")]
        public string WechatCertificateSerialNumber { get; set; } = "7708B527BDDADEFCFD9F5874CD30B78878CFDD9C";
        /// <summary>
        /// 微信支付私钥
        /// </summary>
        [OptionDescription("微信支付私钥")]
        public string WechatCertificatePrivateKeyPath { get; set; } = "./Configs/Certs/Wechat/apiclient_key.pem";
        /// <summary>
        /// 是否分账
        /// </summary>
        [OptionDescription("是否分账")]
        public bool IsProfitSharing { get; set; } = false;
        /// <inheritdoc />
        [OptionDescription("", Ignore = true)]
        public string OptionKey => AppConsts.APPSETTING_WECHAT_APP;
    }
}
